DbContext এবং Model তৈরি করা

Microsoft Technologies - এএসপি ডট নেট কোর (ASP.Net Core) Entity Framework Core (EF Core) |
213
213

ASP.NET Core-এ DbContext এবং Model ব্যবহার করে ডাটাবেসের সঙ্গে কাজ করা যায়। Entity Framework Core (EF Core) এর মাধ্যমে ডাটাবেস অ্যাক্সেসের জন্য এই দুইটি গুরুত্বপূর্ণ উপাদান ব্যবহৃত হয়। DbContext ডাটাবেসের সংযোগ পরিচালনা করে, এবং Model ডাটাবেস টেবিলের গঠন উপস্থাপন করে।


DbContext কী?

DbContext হলো Entity Framework Core এর একটি ক্লাস, যা ডাটাবেস সংযোগ এবং ডাটাবেসের সঙ্গে CRUD (Create, Read, Update, Delete) অপারেশন পরিচালনা করার জন্য ব্যবহৃত হয়। এটি ডাটাবেস এবং অ্যাপ্লিকেশন লজিকের মধ্যে একটি ব্রিজ হিসেবে কাজ করে।


Model কী?

Model হলো ডোমেইন ক্লাস যা ডাটাবেস টেবিলের কাঠামোকে উপস্থাপন করে। প্রতিটি Model ডাটাবেস টেবিলের একটি রেকর্ড বা এনটিটির প্রতিনিধিত্ব করে।


DbContext এবং Model তৈরি করার ধাপসমূহ

প্রয়োজনীয় প্যাকেজ ইন্সটল করা

প্রথমে, Entity Framework Core এবং ডাটাবেস প্রোভাইডারের জন্য প্রয়োজনীয় NuGet প্যাকেজ ইনস্টল করুন। উদাহরণস্বরূপ, যদি SQL Server ব্যবহার করেন:

dotnet add package Microsoft.EntityFrameworkCore
dotnet add package Microsoft.EntityFrameworkCore.SqlServer

Model তৈরি করা

Model ক্লাস হলো একটি সাধারণ C# ক্লাস যা ডাটাবেস টেবিলের কলামগুলোর প্রতিনিধিত্ব করে। উদাহরণস্বরূপ, একটি Student টেবিলের জন্য Model হতে পারে:

public class Student
{
    public int Id { get; set; }
    public string Name { get; set; }
    public int Age { get; set; }
}

DbContext তৈরি করা

DbContext একটি কাস্টম ক্লাস, যা Entity Framework Core এর DbContext ক্লাস থেকে ইনহেরিট করে। এতে ডাটাবেসের টেবিল বা এনটিটির জন্য DbSet প্রপার্টি থাকে।

using Microsoft.EntityFrameworkCore;

public class SchoolContext : DbContext
{
    public SchoolContext(DbContextOptions<SchoolContext> options) : base(options) { }

    public DbSet<Student> Students { get; set; }
}

বিশ্লেষণ:

  • DbContextOptions<SchoolContext> DbContext কনফিগারেশন পরিচালনা করে।
  • DbSet<Student> Students টেবিলের প্রতিনিধিত্ব করে, যার মাধ্যমে ডাটাবেসে CRUD অপারেশন সম্পন্ন করা যাবে।

DbContext কনফিগার করা

Program.cs ফাইলে DbContext কনফিগার করতে হবে, যেখানে ডাটাবেস কানেকশন স্ট্রিং উল্লেখ করা হবে।

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddDbContext<SchoolContext>(options =>
    options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection")));

var app = builder.Build();

কানেকশন স্ট্রিং যোগ করা

appsettings.json ফাইলে ডাটাবেসের কানেকশন স্ট্রিং যোগ করুন:

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=(localdb)\\MSSQLLocalDB;Database=SchoolDB;Trusted_Connection=True;"
  }
}

DbContext এবং Model ব্যবহার

ডাটাবেসে ডেটা যোগ করা

DbContext এর মাধ্যমে ডাটাবেসে নতুন ডেটা যোগ করা যায়:

using (var context = new SchoolContext(options))
{
    var student = new Student { Name = "John Doe", Age = 20 };
    context.Students.Add(student);
    context.SaveChanges();
}

ডাটাবেস থেকে ডেটা পড়া

DbContext এর মাধ্যমে ডাটাবেস থেকে ডেটা পড়া যায়:

using (var context = new SchoolContext(options))
{
    var students = context.Students.ToList();
    foreach (var student in students)
    {
        Console.WriteLine($"{student.Name} - {student.Age}");
    }
}

DbContext এবং Model এর কার্যপ্রক্রিয়া

  1. Model ডাটাবেস টেবিলের প্রতিনিধিত্ব করে।
  2. DbContext ডাটাবেস কানেকশন এবং অপারেশন পরিচালনা করে।
  3. DbSet ব্যবহার করে Model এর মাধ্যমে ডাটাবেস টেবিল অ্যাক্সেস করা হয়।
  4. ডেটাবেস অপারেশন সম্পন্ন করতে LINQ এবং Entity Framework এর বিভিন্ন পদ্ধতি ব্যবহার করা হয়।

DbContext এবং Model ASP.NET Core অ্যাপ্লিকেশনের ডাটাবেস ইন্টিগ্রেশনের একটি শক্তিশালী এবং কার্যকরী মাধ্যম। এটি ডেভেলপারদের ডাটাবেস অপারেশন সহজ এবং মডিউলার করার সুযোগ দেয়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion